package com.xf.lastmall.order.api.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @author YANGSONG103
 */
@Data
public class OrderInvoiceVo implements Serializable {
    private String id;
    /**
     * 订单号
     */
    private String orderNo;
    /**
     * 新发票抬头类型 [1个人，2普通发票-公司，3增值税专用发票，4其他类型]
     */
    private Integer type;
    private String invoiceTypeName;
    private BigDecimal invoiceAmount;
    /**
     * 发票抬头
     */
    private String invoiceNmae;
    /**
     * 发票内容，1代表商品明细，2代表商品类型
     */
    private String invoiceContent;
    /**
     * 商品类型
     * 业态（酒类、生鲜类、图书类、文创类、生活服务类、化妆护肤类、其他）
     * 发票内容为2的时候，业态必须有
     * @see com.crland.mixc.mixccoupon.enums.BusinessTypeEnum 的对应text值
     */
    private String category;

    /**
     * 分账标签
     */
    private String tenantLabel;

    /**
     * 收票人电话
     */
    private String receivePhone;
    /**
     * 收票人邮箱
     */
    private String receiveEmail;
    /**
     * 纳税人识别码
     */
    private String taxCode;
    /**
     * 公司注册地址
     */
    private String registerAddress;
    /**
     * 公司注册电话
     */
    private String registerPhone;
    /**
     * 公司注册银行
     */
    private String registerBank;
    /**
     * 开户行账号
     */
    private String bankAccount;
    /**
     * 发票url
     */
    private String invoicePicUrl;
    /**
     * 发票上传时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date uploadTime;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;
}
